66 research outputs found

    Solving Parity Games in Scala

    Get PDF
    Parity games are two-player games, played on directed graphs, whose nodes are labeled with priorities. Along a play, the maximal priority occurring infinitely often determines the winner. In the last two decades, a variety of algorithms and successive optimizations have been proposed. The majority of them have been implemented in PGSolver, written in OCaml, which has been elected by the community as the de facto platform to solve efficiently parity games as well as evaluate their performance in several specific cases. PGSolver includes the Zielonka Recursive Algorithm that has been shown to perform better than the others in randomly generated games. However, even for arenas with a few thousand of nodes (especially over dense graphs), it requires minutes to solve the corresponding game. In this paper, we deeply revisit the implementation of the recursive algorithm introducing several improvements and making use of Scala Programming Language. These choices have been proved to be very successful, gaining up to two orders of magnitude in running time

    Results on Alternating-Time Temporal Logics with Linear Past

    Get PDF
    We investigate the succinctness gap between two known equally-expressive and different linear-past extensions of standard CTL^* (resp., ATL^*). We establish by formal non-trivial arguments that the "memoryful" linear-past extension (the history leading to the current state is taken into account) can be exponentially more succinct than the standard "local" linear-past extension (the history leading to the current state is forgotten). As a second contribution, we consider the ATL-like fragment, denoted ATL_{lp}, of the known "memoryful" linear-past extension of ATL^{*}. We show that ATL_{lp} is strictly more expressive than ATL, and interestingly, it can be exponentially more succinct than the more expressive logic ATL^{*}. Moreover, we prove that both satisfiability and model-checking for the logic ATL_{lp} are Exptime-complete

    parallel parity games a multicore attractor for the zielonka recursive algorithm

    Get PDF
    Abstract Parity games are abstract infinite-duration two-player games, widely studied in computer science. Several solution algorithms have been proposed and also implemented in the community tool of choice called PGSolver, which has declared the Zielonka Recursive (ZR) algorithm the best performing on randomly generated games. With the aim of scaling and solving wider classes of parity games, several improvements and optimizations have been proposed over the existing algorithms. However, no one has yet explored the benefit of using the full computational power of which even common modern multicore processors are capable of. This is even more surprisingly by considering that most of the advanced algorithms in PGSolver are sequential. In this paper we introduce and implement, on a multicore architecture, a parallel version of the Attractor algorithm, that is the main kernel of the ZR algorithm. This choice follows our investigation that more of the 99% of the execution time of the ZR algorithm is spent in this module. We provide testing on graphs up to 20K nodes generated through PGSolver and we discuss performance analysis in terms of strong and weak scaling

    Improving parity games in practice

    Get PDF
    Parity games are infinite-round two-player games played on directed graphs whose nodes are labeled with priorities. The winner of a play is determined by the smallest priority (even or odd) that is encountered infinitely often along the play. In the last two decades, several algorithms for solving parity games have been proposed and implemented in PGSolver, a platform written in OCaml. PGSolver includes the Zielonka’s recursive algorithm (RE, for short) which is known to be the best performing one over random games. Notably, several attempts have been carried out with the aim of improving the performance of RE in PGSolver, but with small advances in practice. In this work, we deeply revisit the implementation of RE by dealing with the use of specific data structures and programming languages such as Scala, Java, C++, and Go. Our empirical evaluation shows that these choices are successful, gaining up to three orders of magnitude in running time over the classic version of the algorithm implemented in PGSolver

    Swelling, mechanical and barrier properties of albedo-based films prepared in the presence of phaseolin crosslinked or not by transglutaminase

    Get PDF
    Edible films were obtained from Citrus paradisi grapefruit albedo homogenates and bean protein phaseolin modified or not by the enzyme transglutaminase. Swelling capability, barrier performance to water vapor, oxygen and carbon dioxide, and mechanical properties of such films were investigated. The addition of the protein, mostly in the presence of transglutaminase, provide films less swellable at pH values above 5 compared to films made by albedo homogenates only, whereas the action of the enzyme clearly improves mechanical properties producing more stretchable and elastic films. Moreover, transglutaminase-mediated cross-linking of phaseolin gives rise to films less permeable to carbon dioxide and able to offer a high barrier to water vapor. These findings suggest that albedo-phaseolin film prepared in the presence of transglutaminase can be a promising candidate to be used as food edible wrap

    Cortical atrophy in chronic subdural hematoma from ultra-structures to physical properties

    Get PDF
    Several theories have tried to elucidate the mechanisms behind the pathophysiology of chronic subdural hematoma (CSDH). However, this process is complex and remains mostly unknown. In this study we performed a retrospective randomised analysis comparing the cortical atrophy of 190 patients with unilateral CSDH, with 190 healthy controls. To evaluate the extent of cortical atrophy, CT scan images were utilised to develop an index that is the ratio of the maximum diameter sum of 3 cisterns divided by the maximum diameter of the skull at the temporal lobe level. Also, we reported, for the first time, the ultrastructural analyses of the CSDH using a combination of immunohistochemistry methods and transmission electron microscopy techniques. Internal validation was performed to confirm the assessment of the different degrees of cortical atrophy. Relative Cortical Atrophy Index (RCA index) refers to the sum of the maximum diameter of three cisterns (insular cistern, longitudinal cerebral fissure and cerebral sulci greatest) with the temporal bones' greatest internal distance. This index, strongly related to age in healthy controls, is positively correlated to the preoperative and post-operative maximum diameter of hematoma and the midline shift in CSDH patients. On the contrary, it negatively correlates to the Karnofsky Performance Status (KPS). The Area Under the Receiver Operating Characteristics (AUROC) showed that RCA index effectively differentiated cases from controls. Immunohistochemistry analysis showed that the newly formed CD-31 positive microvessels are higher in number than the CD34-positive microvessels in the CSDH inner membrane than in the outer membrane. Ultrastructural observations highlight the presence of a chronic inflammatory state mainly in the CSDH inner membrane. Integrating these results, we have obtained an etiopathogenetic model of CSDH. Cortical atrophy appears to be the triggering factor activating the cascade of transendothelial cellular filtration, inflammation, membrane formation and neovascularisation leading to the CSDH formation

    On Games in Formal Verification

    Get PDF
    Nel Capitolo 1 facciamo uno studio generale del concetto di "prompt" applicato ai Parity Games. Tale studio permette di raggruppare diverse condizioni di parity, alcune introdotte da noi, altre già presenti in letteratura, sotto un unico framework. Inoltre, in questo capitolo, vengono descritte semplici riduzioni polinomiali da tutte queste condizioni a Buchi o Parity, che semplificano tutte le procedure conosciute finora. In particolare, le riduzioni che vengono descritte, abbassano la classe di complessità delle condizioni Cost e Bounded Cost Parity recentemente introdotte. Infatti, vengono forniti algoritmi che mostrano che, determinare il vincitore di tale giochi è in UPTime ∩ CoUPTime. Nel Capitolo 2 viene rivisitata l'implementazione dell'algoritmo ricorsivo di Zielonka introducendo diversi miglioramenti e facendo uso del linguaggio di programmazione Scala. Questa scelta è stata dimostrata essere vantaggiosa, riducendo il tempo di esecuzioni di due ordini di grandezza. Nel Capitolo 3, viene introdotto e studiato Graded Strategy Logic (GSL), un estensione di Strategy Logic (SL) con quantificatori di grado. In tale capitolo, oltre ad essere fornite sintassi e semantica di tale logica, vengono investigate alcune questioni riguardo il frammento vanilla di GSL. In particolare vengono riportati risultati positivi circa la determinatezza dei giochi turn-based ed il relativo problema del model checking, che è mostrato essere in Ptime

    A game-based model for human-robots interaction

    No full text
    Game theory has exhibited to be a fruitful metaphor to reason about multi-player systems. Two kinds of games are mainly studied and adopted: turn-based and concurrent. They differ on the way the players are allowed to move. However, in real scenarios, there are very simple interplays among players whose modeling does not fit well in any of these settings. In this paper we introduce a novel game-based framework to model and reason about the interaction between robots and humans. This framework combines all positive features of both turn-based and concurrent games. Over this game model we study the reachability problem. To give an evidence of the usefulness of the introduced framework, we use it to model the interaction between a human and a team of two robots, in which the former trie

    Graded CTL* over Finite Paths

    No full text
    In this paper we introduce Graded Computation Tree Logic over finite paths (GCTL∗ f, for short), a variant of Computation Tree Logic CTL∗, in which path quantifiers are interpreted over finite paths and can count the number of such paths. State formulas of GCTL∗ f are interpreted over Kripke structures with a designated set of states, which we call "check points". These special states serve to delineate the end points of the finite executions. The syntax of GCTL∗ f has path quantifiers of the form E≥gψ which express that there are at least g many distinct finite paths that a) end in a check point, and b) satisfy ψ. After defining and justifying the logic GCTL∗ f, we solve its model checking problem and establish that its computational complexity is PSPACE-complete
    • …
    corecore